package study.java.thread03;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Hashtable;
import java.util.List;
import java.util.Vector;

/**
* @Name: ThreadSecurityDemo
* @Description: 线程安全类回顾
* @Author: 李超	lc_jack@foxmail.com
* @CreateDate: 2017-1-8 下午11:32:17 
* @Version: V1.0
 */
public class ThreadSecurityDemo {
	
	public static void main(String[] args) {
		//线程安全的类
		StringBuffer sb = new StringBuffer() ;
		Vector<String> vector = new Vector<>() ;
		Hashtable<String, String> h = new Hashtable<>() ;
		
		//Vector是线程安全的时候才去考虑使用的，但即使考虑线程安全，也一般不用Vector
		//那用谁呢？ ——使用Collections工具类提供的集合同步方法
		//例：public static <T> List<T> synchronizedList(List<T> list)	返回指定列表支持的同步（线程安全的）列表。
		//线程不安全用法
//		List<String> list = new ArrayList<>() ;
		//线程安全用法
		List<String> list = Collections.synchronizedList(new ArrayList<String>()) ;
		
	}

}
